#ifndef _M_H
#define _M_H

#include <stdio.h>
#include <sys/types.h>          /* See NOTES */
#include <sys/socket.h>
#include <netinet/in.h>
#include <netinet/ip.h>
#include <string.h>
#include <arpa/inet.h>
#include <pthread.h>
#include <unistd.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <strings.h>
#include <stdlib.h>
#include <time.h>
#include <sys/time.h>        
#include <signal.h>
#include <netdb.h>
#include <sys/ioctl.h>
#include <net/if.h>
#include <sys/wait.h>
#include <sys/mman.h>
#include <linux/input.h>
#include <stdint.h>
#include <stdbool.h>
#include <semaphore.h>
#include <sys/select.h>
#include <sys/shm.h>
#include <sys/sem.h>
#include <sys/ipc.h>
#include <sys/msg.h>
#include <math.h> 
#include <netdb.h> 
#include <errno.h> 
#include <dirent.h> 
#include <wchar.h>
#include <locale.h>


//lvgl 头文件
#include "lvgl/lvgl.h"
#include "lvgl/demos/lv_demos.h"
#include "lv_drivers/display/fbdev.h"
#include "lv_drivers/indev/evdev.h"

//JSON 解析器头文件
#include "cJSON.h"

int LED_state_flag;

//时间显示模块
void time_display(lv_obj_t *win);
//LED控制模块
void LED_ctrl(lv_obj_t *win, int led_ctrl_flag, char *rcv_buf1);
//天气显示模块
char* weather_display(lv_obj_t *win);
//空气检测显示模块
char* air_testing(lv_obj_t *win);
//数据上报模块
void data_reporting(lv_obj_t *win, char* rcvbuf1, char* rcvbuf2);
//音乐播放模块
void music();
//视频播放模块
void video();
//灯光闪烁模块
void LED_blink(char *rcv_buf_cb);
void *LED_blink1(void *arg);
//复制部分，用于双开
void music1();
void video1();

#endif




